package hellfire.platform.graphics.animtools;

import hellfire.system.graphics.GLDrawable;
import hellfire.system.graphics.GLVec2;

public abstract class AbstractSequence implements GLDrawable 
{
	protected GLDrawable drawable;
	
	public AbstractSequence(GLDrawable drawable)
	{
		this.drawable = drawable;
	}
	
	@Override
	public void draw(float[] matrix)
	{
		progress();
		drawable.draw(matrix);
	}
	
	@Override
	public GLVec2 getPos() 
	{
		return drawable.getPos();
	}
	
	@Override
	public void setPos(GLVec2 pos) 
	{
		drawable.setPos(pos);
	}
	
	public abstract void progress();
}
